package smtpserver

// AuthSource 定义认证源接口
type AuthSource interface {
	// Authenticate 验证用户名和密码
	// 返回 true 表示认证成功，false 表示认证失败
	Authenticate(username, password string) bool
}

// DefaultAuthSource 默认的认证源实现，允许所有认证
type DefaultAuthSource struct{}

// NewDefaultAuthSource 创建默认认证源
func NewDefaultAuthSource() *DefaultAuthSource {
	return &DefaultAuthSource{}
}

// Authenticate 实现 AuthSource 接口
// 默认实现允许所有认证请求
func (a *DefaultAuthSource) Authenticate(username, password string) bool {
	return true
}
